1d463835ebb1dadf799b49c02de7fa9bcef8c56d,src/freenet/node/FNPPacketMangler.java,FNPPacketMangler,sendJFKMessage2,#number[]#number[]#PeerNode#Peer#boolean#number#number#,886
Before Change
*/
private void sendJFKMessage2(byte[] nonceInitator, byte[] hisExponential, PeerNode pn, Peer replyTo, boolean unknownInitiator, int setupType, int negType) {
if(logMINOR) Logger.minor(this, "Sending a JFK(2) message to "+pn);
DiffieHellmanLightContext ctx = getLightDiffieHellmanContext();
// g^r
byte[] myExponential = stripBigIntegerToNetworkFormat(ctx.myExponential);
// Nr
After Change
int modulusLength = getModulusLength(negType);
// g^r
KeyAgreementSchemeContext ctx = (negType < 8 ? getLightDiffieHellmanContext() : getECDHLightContext());
DSASignature sig = ctx.signature;
// Nr
byte[] myNonce = new byte[NONCE_SIZE];
node.random.nextBytes(myNonce);
byte[] myExponential = ctx.getPublicKeyNetworkFormat();
byte[] r = sig.getRBytes(Node.SIGNATURE_PARAMETER_LENGTH);
byte[] s = sig.getSBytes(Node.SIGNATURE_PARAMETER_LENGTH);
byte[] authenticator = HMAC.macWithSHA256(getTransientKey(),assembleJFKAuthenticator(myExponential, hisExponential, myNonce, nonceInitator, replyTo.getAddress().getAddress()), HASH_LENGTH);